#pragma once
#include "INoiseGenerator.h"
#include <math.h>
class SimplexNoise :
	public INoiseGenerator
{
private:
	int i, j, k;
	int A[3];

	float u, v, w;
	float T [8];
	float noise(float x, float y, float z);
	float K(int a);
	float Shuffle(int i, int j, int k);

	int b4Param(int i, int j, int k, int B);
	int b2Param(int N, int B);
public:
	float Get1D(float x) override;
	float Get2D(float x, float y) override;

	SimplexNoise();
	~SimplexNoise();
};

